package routers

import (
	middleWare "backend/middleware"
	"fmt"
	"github.com/gin-gonic/gin"
	"time"
)

func StatCost() gin.HandlerFunc {
	return func(c *gin.Context) {
		start := time.Now()

		c.Set("name", "aleilei") //可以通过Set在请求上下文中设置值后续的函数可以取到该值

		c.Next() //调用后续的处理程序

		cost := time.Since(start)

		fmt.Println(cost)
	}
}

func InitRouter() *gin.Engine {
	r := gin.New()      //自定义一个新的路由引擎
	r.Use(gin.Logger()) //使用logger中间件
	r.Use(gin.Recovery())

	r.Use(middleWare.Cors()) //全局注册中间件

	g := r.Group("/area")
	f := r.Group("/goods")
	h := r.Group("/firm")
	s := r.Group("/storage")
	//SyBaseRouter(g) //基本的路由
	AreaRouter(g)  //仓库处理
	GoodsRouter(f) //商品处理
	FirmRouter(h)
	StorageRouters(s)
	return r
}
